﻿/* 
 * Since 2008 - 2012
 */

package com.hh.bss.project.service;
import java.io.File;
import java.io.Serializable;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest;

import java.util.*;

import javax.servlet.http.HttpServletRequest;

import com.hh.bss.auth.client.OnlineUser;
import com.hh.bss.base.*;
import com.hh.bss.common.page.*;
import com.hh.bss.common.page.impl.*;
import com.hh.bss.project.dao.*;
import com.hh.bss.project.entity.*;
import com.hh.bss.project.service.*;
import com.hh.bss.project.vo.query.*;
import com.hh.bss.util.*;





public interface ContractJobService<E,PK extends Serializable> extends  BusinessService<E,PK>{
	public Page findPage(ContractJobQuery query);	
	public Page findJobPage(ContractJobQuery query);
	/**查询待审核的职位*/
	public Page findAuditJobPage(ContractJobQuery query);
	
	public Integer passedAudit(String id,String auditor);
	public Integer rejectAudit(String id,String auditor);
	public Page queryJobPage(ContractJobQuery query);
	public List findProjectJob(ContractJobQuery query);	
	public File genJDDocCn(HttpServletRequest request,OnlineUser onlineUser,ContractJob contractJob);
	public File genJDDocEn(HttpServletRequest request,OnlineUser onlineUser,ContractJob contractJob);
	public Page findProjectJobPage(ContractJobQuery query);
	/**
	 * 查询职位所挂SL
	 * @param query
	 * @return
	 */
	public Page findJobInProjectPage(ContractJobQuery query);
	public void saveFile(MultipartHttpServletRequest multipartRequest,MultipartFile multipartFile,ContractJob contractJob);
	public String getNextPositionNo(ContractJob contractJob);
	public void updateJobPartner(Integer jobId);
	public Integer getJobProjectId(Integer jobId);
	/**
	 * 判断职位下 的offer是否已经有开过账单
	 * @param jobId
	 * @return
	 */
	public boolean hasOfferBill(Integer jobId);
	
	
}
